package com.workcell.workdata.xthings.dto.fd;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import java.util.List;
import java.util.Map;


@Data
@EqualsAndHashCode(callSuper = true)
@Builder
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(value = "模板表数据传输对象")
public class FormTableDTO extends Page {


    /**
     * 租户ID
     */
    @ApiModelProperty(value = "租户ID")
    private Long tenantId;

    /**
     * 模板id
     */
    @ApiModelProperty(value = "模板id")
    private Long templateId;

    /**
     * 模板类型id
     */
    @ApiModelProperty(value = "模板类型id")
    private Integer baseTypeId;

    /**
     * 视图id
     */
    @ApiModelProperty(value = "视图id")
    private String viewId;

    /**
     * table内容
     */
    @ApiModelProperty(value = "table内容")
    private String instanceContent;

    /**
     * 查询字段
     */
    @ApiModelProperty(value = "查询字段")
    private List<QueryField> queryFieldList;

    /**
     * 查询组件唯一值（子表单使用）
     */
    @ApiModelProperty(value = "查询组件唯一值（子表单使用）")
    private String tableProp;

    @ApiModelProperty(value = "主表记录id（子表单使用）")
    private String mainRecordId;

    /**
     * 默认筛选条件内容
     */
    @ApiModelProperty(value = "默认筛选条件内容")
    private List<Map<String, Object>> queryDefaultRecordCondition;

    /**
     * 模板类型
     */
    @ApiModelProperty(value = "模板类型")
    private String baseType;
}
